fontchooser: Remove signal handlers in dispose
authorMatthias Clasen <mclasen@redhat.com>
Sat, 19 Sep 2020 14:44:50 +0000 (10:44 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sat, 19 Sep 2020 14:44:50 +0000 (10:44 -0400)
Avoid ordering issues in dispose by disconnecting
the rows_changed_cb handler first thing.

gtk/gtkfontchooserwidget.c

index ede2ce8bf474033122dfd9f32437bdc4f68b6fac..0f380f34b91ca2c516655d35538860594e92fcb0 100644 (file)
@@ -856,6 +856,9 @@ gtk_font_chooser_widget_dispose (GObject *object)
 {
   GtkFontChooserWidget *self = GTK_FONT_CHOOSER_WIDGET (object);
 
+  g_signal_handlers_disconnect_by_func (self->selection, rows_changed_cb, self);
+  g_signal_handlers_disconnect_by_func (self->filter_model, rows_changed_cb, self);
+
   self->filter_func = NULL;
   g_clear_pointer (&self->filter_data, self->filter_data_destroy);